// async await 是消灭异步回调的终极武器
// js还是单线程，还得有异步，还得基于 event loop
// async await是语法糖
// 执行async函数返回的一定是一个promise对象， await 后相当于promise then 返回promise中的内容

async function async1() {
  console.log('async1 start');//2
  await async2()// undefined
  // await 后面，都可以看作是callback里的内容，即异步
  // 类似 event loop ，setTimeout（cb1）
  // setTimeout(function() {console.log('async1 end');})
  console.log('async1 end');//5
}

async function async2() {
  console.log(async2);//3
}

console.log('script start'); //1
async1()
console.log('script end');//4






